///
//  Bitmap v 1.0
//  Russell Lowke, Febrauary 27th 2011
//
//  Copyright (c) 2011 Lowke Media
//  see http://www.lowkemedia.com for more information
//
//  Permission is hereby granted, free of charge, to any person obtaining a 
//  copy of this software and associated documentation files (the "Software"), 
//  to deal in the Software without restriction, including without limitation 
//  the rights to use, copy, modify, merge, publish, distribute, sublicense, 
//  and/or sell copies of the Software, and to permit persons to whom the 
//  Software is furnished to do so, subject to the following conditions:
// 
//  The above copyright notice and this permission notice shall be included in 
//  all copies or substantial portions of the Software.
// 
//  THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 
//  IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 
//  FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 
//  AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 
//  LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING 
//  FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS 
//  IN THE SOFTWARE. 
//
//

function Bitmap(image)                              // (bitmap) image for this sprite
{
    
    this.setImage = function(image) {
        this.image = image;
        if (this.image) {                           // image might still be loading
            this.width = this.image.width;
            this.height = this.image.height;
        }
        this.setReg(Sprite.CENTER);                 // default to center reg point
    }
    
    this.setImage(image);   
    
    this.draw = function(ctx)                       // (context) canvas context being drawn into
    {
        
        // FOR NOW, always set registration to middle of image.
        
        if (this.regX === 0 && this.image.width) {
            this.width = this.image.width;
            this.height = this.image.height;
            this.setReg(Sprite.CENTER);
        }
        
        if (this.image) {
            // draw image
            ctx.drawImage(this.image, -this.regX, -this.regY);
        }
    }
}

Bitmap.prototype = new Sprite();                    // Bitmap class extends Sprite

